home *** CD-ROM | disk | FTP | other *** search
/ QuickTime 1.0 for Developers / QuickTime 1.0 for Developers.iso / Photos / PICTCompressor™ / PICTCompressor™.rsrc / CODE_9_32-bit bootstrap.txt < prev    next >
Text File  |  1991-09-11  |  44KB  |  810 lines

  1. # near model CODE resource
  2. # jump table entries: 0-0 (1 of them)
  3. export_0:
  4. 00000000  7030                     moveq.l    D0, 0x30
  5. 00000002  A31E                     syscall    NewPtrClear, flags=3
  6. 00000004  4A40                     tst.w      D0
  7. 00000006  6702                     beq        +0x4 /* 0000000A */
  8. 00000008  4E75                     rts
  9. label0000000A:
  10. 0000000A  3038 0934                move.w     D0, [0x00000934 /* CurJTOffset */]
  11. 0000000E  2B88 000C                move.l     [A5 + D0.w + 0xC], A0
  12. 00000012  4A78 028E                tst.w      [0x0000028E /* ROM85 */]
  13. 00000016  6D2E                     blt        +0x30 /* 00000046 */
  14. 00000018  303C A89F                move.w     D0, 0xA89F
  15. 0000001C  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  16. 0000001E  2248                     movea.l    A1, A0
  17. 00000020  303C A090                move.w     D0, 0xA090
  18. 00000024  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  19. 00000026  B3C8                     cmpa.l     A1, A0
  20. 00000028  671C                     beq        +0x1E /* 00000046 */
  21. 0000002A  9EFC 0010                sub.w      A7, 0x10
  22. 0000002E  41D7                     lea.l      A0, [A7]
  23. 00000030  7001                     moveq.l    D0, 0x01
  24. 00000032  A090                     syscall    SysEnvirons
  25. 00000034  0C68 0001 0006           cmpi.w     [A0 + 0x6], 0x1
  26. 0000003A  56C0                     sne        D0
  27. 0000003C  41FA 004E                lea.l      A0, [PC + 0x4E /* 0000008C, value 0x83A, cstring "" */]
  28. 00000040  1080                     move.b     [A0], D0
  29. 00000042  4FEF 0010                lea.l      A7, [A7 + 0x10]
  30. label00000046:
  31. 00000046  6100 0176                bsr        +0x178 /* 000001BE */
  32. 0000004A  6100 00F2                bsr        +0xF4 /* 0000013E */
  33. 0000004E  41FA 0024                lea.l      A0, [PC + 0x24 /* 00000074, value 0x0, cstring "" */]
  34. 00000052  2097                     move.l     [A0], [A7]
  35. 00000054  204D                     movea.l    A0, A5
  36. 00000056  D0F8 0934                add.w      A0, [0x00000934 /* CurJTOffset */]
  37. 0000005A  4EA8 0012                jsr        [A0 + 0x12]
  38. 0000005E  6100 0192                bsr        +0x194 /* 000001F2 */
  39. 00000062  204D                     movea.l    A0, A5
  40. 00000064  D0F8 0934                add.w      A0, [0x00000934 /* CurJTOffset */]
  41. 00000068  2068 000C                movea.l    A0, [A0 + 0xC]
  42. 0000006C  A01F                     syscall    DisposPtr/DisposePtr
  43. 0000006E  207A 0004                movea.l    A0, [PC + 0x4 /* 00000074, value 0x0, cstring "" */]
  44. 00000072  4ED0                     jmp        [A0]
  45. 00000074  0000 0000                ori.b      D0, 0x0
  46. 00000078  4E75                     rts
  47. 0000007A  800E                     or.b       D0, A6
  48. 0000007C  3332 5F62 6974 5F73      move.w     -[A1], [[A2 + 0x6974] + 0x5F73]
  49. 00000084  7461                     moveq.l    D2, 0x61
  50. 00000086  7274                     moveq.l    D1, 0x74
  51. 00000088  7570                     moveq.l    D2, 0x70
  52. 0000008A  0000 0000                ori.b      D0, 0x0
  53. fn0000008E:
  54. 0000008E  083A 0000 FFFA           btst.b     [PC - 0x6 /* 0000008A, value 0x0, cstring "" */], 0x0
  55. 00000094  6720                     beq        +0x22 /* 000000B6 */
  56. 00000096  0C38 0004 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x4
  57. 0000009C  6716                     beq        +0x18 /* 000000B4 */
  58. 0000009E  0C38 0000 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x0
  59. 000000A4  6710                     beq        +0x12 /* 000000B6 */
  60. 000000A6  4E7A                     .invalid   // invalid opcode 4
  61. 000000A8  1002                     move.b     D0, D2
  62. 000000AA  08C1 0003                bset.b     D1, 0x3
  63. 000000AE  4E7B                     .invalid   // invalid opcode 4
  64. 000000B0  1002                     move.b     D0, D2
  65. 000000B2  6002                     bra        +0x4 /* 000000B6 */
  66. label000000B4:
  67. 000000B4  F4F8                     cpusha     DATA+INST
  68. label000000B6:
  69. 000000B6  4E75                     rts
  70. 000000B8  800B                     or.b       D0, A3
  71. 000000BA  666C                     bne        +0x6E /* 00000128 */
  72. 000000BC  7573                     moveq.l    D2, 0x73
  73. 000000BE  685F                     bvc        +0x61 /* 0000011F */
  74. 000000C0  6361                     bls        +0x63 /* 00000123 */
  75. 000000C2  6368                     bls        +0x6A /* 0000012C */
  76. 000000C4  6500 0000                bcs        +0x2 /* 000000C6 */
  77. // begin alternate branch 000000C6-000000CA
  78. label000000C6:
  79. 000000C6  0000 205F                ori.b      D0, 0x5F /* '_' */
  80. // end alternate branch 000000C6-000000CA
  81. label000000C6: // (misaligned)
  82. 000000C8  205F                     movea.l    A0, [A7]+
  83. 000000CA  584F                     addq.w     A7, 4
  84. 000000CC  4257                     clr.w      [A7]
  85. 000000CE  4ED0                     jmp        [A0]
  86. 000000D0  800B                     or.b       D0, A3
  87. 000000D2  7072                     moveq.l    D0, 0x72
  88. 000000D4  655F                     bcs        +0x61 /* 00000135 */
  89. 000000D6  4C6F 6164 5365           movem.l    D2,D5,D6,A0,A5,A6, [A7 + 0x5365]
  90. 000000DC  6700 0000                beq        +0x2 /* 000000DE */
  91. // begin alternate branch 000000DE-000000E2
  92. label000000DE:
  93. 000000DE  0000 205F                ori.b      D0, 0x5F /* '_' */
  94. // end alternate branch 000000DE-000000E2
  95. label000000DE: // (misaligned)
  96. 000000E0  205F                     movea.l    A0, [A7]+
  97. 000000E2  584F                     addq.w     A7, 4
  98. 000000E4  4257                     clr.w      [A7]
  99. 000000E6  4ED0                     jmp        [A0]
  100. 000000E8  800C                     or.b       D0, A4
  101. 000000EA  706F                     moveq.l    D0, 0x6F
  102. 000000EC  7374                     moveq.l    D1, 0x74
  103. 000000EE  5F4C                     subq.w     A4, 7
  104. 000000F0  6F61                     ble        +0x63 /* 00000153 */
  105. 000000F2  6453                     bcc        +0x55 /* 00000147 */
  106. 000000F4  6567                     bcs        +0x69 /* 0000015D */
  107. 000000F6  0000 205F                ori.b      D0, 0x5F /* '_' */
  108. 000000FA  584F                     addq.w     A7, 4
  109. 000000FC  4257                     clr.w      [A7]
  110. 000000FE  4ED0                     jmp        [A0]
  111. 00000100  800D                     or.b       D0, A5
  112. 00000102  7072                     moveq.l    D0, 0x72
  113. 00000104  655F                     bcs        +0x61 /* 00000165 */
  114. 00000106  556E 6C6F                subq.w     [A6 + 0x6C6F], 2
  115. 0000010A  6164                     bsr        +0x66 /* 00000170 */
  116. 0000010C  5365                     subq.w     -[A5], 1
  117. 0000010E  6700 0000                beq        +0x2 /* 00000110 */
  118. // begin alternate branch 00000110-00000114
  119. label00000110:
  120. 00000110  0000 205F                ori.b      D0, 0x5F /* '_' */
  121. // end alternate branch 00000110-00000114
  122. label00000110: // (misaligned)
  123. 00000112  205F                     movea.l    A0, [A7]+
  124. 00000114  584F                     addq.w     A7, 4
  125. 00000116  4257                     clr.w      [A7]
  126. 00000118  4ED0                     jmp        [A0]
  127. 0000011A  800D                     or.b       D0, A5
  128. 0000011C  6572                     bcs        +0x74 /* 00000190 */
  129. 0000011E  726F                     moveq.l    D1, 0x6F
  130. 00000120  725F                     moveq.l    D1, 0x5F
  131. 00000122  6861                     bvc        +0x63 /* 00000185 */
  132. 00000124  6E64                     bgt        +0x66 /* 0000018A */
  133. 00000126  6C65                     bge        +0x67 /* 0000018D */
  134. label00000128:
  135. 00000128  7200                     moveq.l    D1, 0x00
  136. 0000012A  0000 0001                ori.b      D0, 0x1
  137. // begin alternate branch 0000012C-00000130
  138. label0000012C:
  139. 0000012C  0001 FF9C                ori.b      D1, 0x9C
  140. // end alternate branch 0000012C-00000130
  141. label0000012C: // (misaligned)
  142. 0000012E  FF9C                     .invalid   <<F/6/7>>
  143. 00000130  0002 FFB4                ori.b      D2, 0xB4
  144. 00000134  0003 FFCC                ori.b      D3, 0xCC
  145. 00000138  0004 FFE6                ori.b      D4, 0xE6
  146. 0000013C  0000 48E7                ori.b      D0, 0xE7
  147. // begin alternate branch 0000013E-00000142
  148. fn0000013E:
  149. 0000013E  48E7 80E0                movem.l    -[A7], D0,A0,A1,A2
  150. // end alternate branch 0000013E-00000142
  151. fn0000013E: // (misaligned)
  152. 00000140  80E0                     divu.w     D0, -[A0]
  153. 00000142  224D                     movea.l    A1, A5
  154. 00000144  D2F8 0934                add.w      A1, [0x00000934 /* CurJTOffset */]
  155. 00000148  2269 000C                movea.l    A1, [A1 + 0xC]
  156. 0000014C  45FA FFDE                lea.l      A2, [PC - 0x22 /* 0000012C, value 0x1FF9C, cstring "" */]
  157. label00000150:
  158. 00000150  301A                     move.w     D0, [A2]+
  159. 00000152  670A                     beq        +0xC /* 0000015E */
  160. 00000154  305A                     movea.w    A0, [A2]+
  161. 00000156  41FB 80D4                lea.l      A0, [PC + A0.w - 0x44]
  162. 0000015A  611A                     bsr        +0x1C /* 00000176 */
  163. 0000015C  60F2                     bra        -0xC /* 00000150 */
  164. label0000015E:
  165. 0000015E  4CDF 0701                movem.l    D0,A0,A1,A2, [A7]+
  166. 00000162  4E75                     rts
  167. 00000164  800D                     or.b       D0, A5
  168. 00000166  7365                     moveq.l    D1, 0x65
  169. 00000168  7475                     moveq.l    D2, 0x75
  170. 0000016A  705F                     moveq.l    D0, 0x5F
  171. 0000016C  7665                     moveq.l    D3, 0x65
  172. 0000016E  6374                     bls        +0x76 /* 000001E4 */
  173. fn00000170:
  174. 00000170  6F72                     ble        +0x74 /* 000001E4 */
  175. 00000172  7300                     moveq.l    D1, 0x00
  176. 00000174  0000 D040                ori.b      D0, 0x40 /* '@' */
  177. // begin alternate branch 00000176-00000178
  178. fn00000176:
  179. 00000176  D040                     add.w      D0, D0
  180. // end alternate branch 00000176-00000178
  181. fn00000176: // (misaligned)
  182. 00000178  D040                     add.w      D0, D0
  183. 0000017A  2F31 0000                move.l     -[A7], [A1 + D0.w]
  184. 0000017E  2388 0000                move.l     [A1 + D0.w], A0
  185. 00000182  205F                     movea.l    A0, [A7]+
  186. 00000184  4E75                     rts
  187. 00000186  800A                     or.b       D0, A2
  188. 00000188  7365                     moveq.l    D1, 0x65
  189. label0000018A:
  190. 0000018A  745F                     moveq.l    D2, 0x5F
  191. 0000018C  7665                     moveq.l    D3, 0x65
  192. 0000018E  6374                     bls        +0x76 /* 00000204 */
  193. label00000190:
  194. 00000190  6F72                     ble        +0x74 /* 00000204 */
  195. 00000192  0000 01F0                ori.b      D0, 0xF0
  196. 00000196  00DE                     .incomplete
  197. 00000198  0000 0000                ori.b      D0, 0x0
  198. 0000019C  01F1                     .incomplete
  199. 0000019E  036A 0000                bchg       [A2 + 0x0], D1
  200. 000001A2  0000 01F3                ori.b      D0, 0xF3
  201. 000001A6  00A8 0000 0000 01F2      ori.l      [A0 + 0x1F2], 0x0
  202. 000001AE  0090 0000 0000           ori.l      [A0], 0x0
  203. 000001B4  01F4                     .incomplete
  204. 000001B6  00C0                     .incomplete
  205. 000001B8  0000 0000                ori.b      D0, 0x0
  206. 000001BC  0000 43FA                ori.b      D0, 0xFA
  207. // begin alternate branch 000001BE-000001C2
  208. fn000001BE:
  209. 000001BE  43FA FFD4                lea.l      A1, [PC - 0x2C /* 00000194, value 0x1F000DE */]
  210. // end alternate branch 000001BE-000001C2
  211. fn000001BE: // (misaligned)
  212. 000001C0  FFD4                     .invalid   <<F/7/7>>
  213. label000001C2:
  214. 000001C2  3011                     move.w     D0, [A1]
  215. 000001C4  6716                     beq        +0x18 /* 000001DC */
  216. 000001C6  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  217. 000001C8  2348 0004                move.l     [A1 + 0x4], A0
  218. 000001CC  3069 0002                movea.w    A0, [A1 + 0x2]
  219. 000001D0  41FB 80C2                lea.l      A0, [PC + A0.w - 0x62]
  220. 000001D4  3011                     move.w     D0, [A1]
  221. 000001D6  A647                     syscall    SetToolBoxTrapAddress/SetToolTrapAddress, flags=6
  222. 000001D8  5049                     addq.w     A1, 8
  223. 000001DA  60E6                     bra        -0x18 /* 000001C2 */
  224. label000001DC:
  225. 000001DC  4E75                     rts
  226. 000001DE  800F                     or.b       D0, A7
  227. 000001E0  696E                     bvs        +0x70 /* 00000250 */
  228. 000001E2  7374                     moveq.l    D1, 0x74
  229. label000001E4:
  230. 000001E4  616C                     bsr        +0x6E /* 00000252 */
  231. 000001E6  6C5F                     bge        +0x61 /* 00000247 */
  232. 000001E8  7061                     moveq.l    D0, 0x61
  233. 000001EA  7463                     moveq.l    D2, 0x63
  234. 000001EC  6865                     bvc        +0x67 /* 00000253 */
  235. 000001EE  7300                     moveq.l    D1, 0x00
  236. 000001F0  0000 48E7                ori.b      D0, 0xE7
  237. // begin alternate branch 000001F2-000001F6
  238. fn000001F2:
  239. 000001F2  48E7 00C0                movem.l    -[A7], A0,A1
  240. // end alternate branch 000001F2-000001F6
  241. fn000001F2: // (misaligned)
  242. 000001F4  00C0                     .incomplete
  243. 000001F6  43FA FF9C                lea.l      A1, [PC - 0x64 /* 00000194, value 0x1F000DE */]
  244. label000001FA:
  245. 000001FA  3011                     move.w     D0, [A1]
  246. 000001FC  670A                     beq        +0xC /* 00000208 */
  247. 000001FE  2069 0004                movea.l    A0, [A1 + 0x4]
  248. 00000202  A647                     syscall    SetToolBoxTrapAddress/SetToolTrapAddress, flags=6
  249. label00000204:
  250. 00000204  5049                     addq.w     A1, 8
  251. 00000206  60F2                     bra        -0xC /* 000001FA */
  252. label00000208:
  253. 00000208  4CDF 0300                movem.l    A0,A1, [A7]+
  254. 0000020C  4E75                     rts
  255. 0000020E  8011                     or.b       D0, [A1]
  256. 00000210  756E                     moveq.l    D2, 0x6E
  257. 00000212  696E                     bvs        +0x70 /* 00000282 */
  258. 00000214  7374                     moveq.l    D1, 0x74
  259. 00000216  616C                     bsr        +0x6E /* 00000284 */
  260. 00000218  6C5F                     bge        +0x61 /* 00000279 */
  261. 0000021A  7061                     moveq.l    D0, 0x61
  262. 0000021C  7463                     moveq.l    D2, 0x63
  263. 0000021E  6865                     bvc        +0x67 /* 00000285 */
  264. 00000220  7300                     moveq.l    D1, 0x00
  265. 00000222  0000 2F3A                ori.b      D0, 0x3A /* ':' */
  266. 00000226  FF8A                     .invalid   <<F/6/7>>
  267. 00000228  61C8                     bsr        -0x36 /* 000001F2 */
  268. 0000022A  4E75                     rts
  269. 0000022C  800C                     or.b       D0, A4
  270. 0000022E  7061                     moveq.l    D0, 0x61
  271. 00000230  7463                     moveq.l    D2, 0x63
  272. 00000232  685F                     bvc        +0x61 /* 00000293 */
  273. 00000234  4C61 756E                movem.l    D1,D2,D3,D5,D7,A1,A2,A4,A5,A6, -[A1]
  274. 00000238  6368                     bls        +0x6A /* 000002A2 */
  275. 0000023A  0000 2F3A                ori.b      D0, 0x3A /* ':' */
  276. 0000023E  FF6A                     .extension 0xF6A <<F/4-5/7>> // unimplemented
  277. 00000240  61B0                     bsr        -0x4E /* 000001F2 */
  278. 00000242  4E75                     rts
  279. 00000244  800B                     or.b       D0, A3
  280. 00000246  7061                     moveq.l    D0, 0x61
  281. 00000248  7463                     moveq.l    D2, 0x63
  282. 0000024A  685F                     bvc        +0x61 /* 000002AB */
  283. 0000024C  4368 6169                chk.w      D1, [A0 + 0x6169]
  284. label00000250:
  285. 00000250  6E00 0000                bgt        +0x2 /* 00000252 */
  286. // begin alternate branch 00000252-00000258
  287. fn00000252:
  288. 00000252  0000 2F3A                ori.b      D0, 0x3A /* ':' */
  289. 00000256  FF62                     .extension 0xF62 <<F/4-5/7>> // unimplemented
  290. // end alternate branch 00000252-00000258
  291. fn00000252: // (misaligned)
  292. 00000254  2F3A FF62                move.l     -[A7], [PC - 0x9E /* 000001B8, value 0x0, cstring "" */]
  293. 00000258  6198                     bsr        -0x66 /* 000001F2 */
  294. 0000025A  4E75                     rts
  295. 0000025C  8011                     or.b       D0, [A1]
  296. 0000025E  7061                     moveq.l    D0, 0x61
  297. 00000260  7463                     moveq.l    D2, 0x63
  298. 00000262  685F                     bvc        +0x61 /* 000002C3 */
  299. 00000264  4578 6974                chk.w      D2, [0x00006974]
  300. 00000268  546F 5368                addq.w     [A7 + 0x5368], 2
  301. 0000026C  656C                     bcs        +0x6E /* 000002DA */
  302. 0000026E  6C00 0000                bge        +0x2 /* 00000270 */
  303. // begin alternate branch 00000270-00000278
  304. label00000270:
  305. 00000270  0000 48E7                ori.b      D0, 0xE7
  306. 00000274  F0C0 204D                .extension 0x0C0 <<F/2-3/0>> // unimplemented
  307. // end alternate branch 00000270-00000278
  308. label00000270: // (misaligned)
  309. 00000272  48E7 F0C0                movem.l    -[A7], D0,D1,D2,D3,A0,A1
  310. 00000276  204D                     movea.l    A0, A5
  311. 00000278  D0F8 0934                add.w      A0, [0x00000934 /* CurJTOffset */]
  312. 0000027C  0C68 FFFF 000A           cmpi.w     [A0 + 0xA], 0xFFFF
  313. label00000282:
  314. 00000282  6600 0172                bne        +0x174 /* 000003F6 */
  315. // begin alternate branch 00000284-00000288
  316. fn00000284:
  317. 00000284  0172 7600                bchg       [A2 + D7.w * 8], D0
  318. // end alternate branch 00000284-00000288
  319. fn00000284: // (misaligned)
  320. 00000286  7600                     moveq.l    D3, 0x00
  321. 00000288  226F 0018                movea.l    A1, [A7 + 0x18]
  322. 0000028C  B3CD                     cmpa.l     A1, A5
  323. 0000028E  6D2C                     blt        +0x2E /* 000002BC */
  324. 00000290  4240                     clr.w      D0
  325. 00000292  6100 0390                bsr        +0x392 /* 00000624 */
  326. 00000296  B0FC 0000                cmpa.w     A0, 0x0
  327. 0000029A  6602                     bne        +0x4 /* 0000029E */
  328. 0000029C  A9FF                     syscall    Debugger
  329. label0000029E:
  330. 0000029E  598F                     subq.l     A7, 4
  331. 000002A0  2F08                     move.l     -[A7], A0
  332. label000002A2:
  333. 000002A2  A9A5                     syscall    GetResourceSizeOnDisk/SizeResource/SizeRsrc
  334. 000002A4  201F                     move.l     D0, [A7]+
  335. 000002A6  2040                     movea.l    A0, D0
  336. 000002A8  D0F8 0934                add.w      A0, [0x00000934 /* CurJTOffset */]
  337. 000002AC  90FC 0010                sub.w      A0, 0x10
  338. 000002B0  D1CD                     add.l      A0, A5
  339. 000002B2  226F 0018                movea.l    A1, [A7 + 0x18]
  340. 000002B6  B3C8                     cmpa.l     A1, A0
  341. 000002B8  6E02                     bgt        +0x4 /* 000002BC */
  342. 000002BA  6002                     bra        +0x4 /* 000002BE */
  343. label000002BC:
  344. 000002BC  7601                     moveq.l    D3, 0x01
  345. label000002BE:
  346. 000002BE  4A03                     tst.b      D3
  347. 000002C0  6610                     bne        +0x12 /* 000002D2 */
  348. 000002C2  303C 0001                move.w     D0, 0x1
  349. 000002C6  204F                     movea.l    A0, A7
  350. 000002C8  41E8 0018                lea.l      A0, [A0 + 0x18]
  351. 000002CC  6100 0144                bsr        +0x146 /* 00000412 */
  352. 000002D0  6014                     bra        +0x16 /* 000002E6 */
  353. label000002D2:
  354. 000002D2  302F 001C                move.w     D0, [A7 + 0x1C]
  355. 000002D6  6100 0378                bsr        +0x37A /* 00000650 */
  356. label000002DA:
  357. 000002DA  2250                     movea.l    A1, [A0]
  358. 000002DC  0C51 FFFF                cmpi.w     [A1], 0xFFFF
  359. 000002E0  6600 0114                bne        +0x116 /* 000003F6 */
  360. 000002E4  6016                     bra        +0x18 /* 000002FC */
  361. label000002E6:
  362. 000002E6  226F 0018                movea.l    A1, [A7 + 0x18]
  363. 000002EA  3029 FFFC                move.w     D0, [A1 - 0x4]
  364. 000002EE  6100 0360                bsr        +0x362 /* 00000650 */
  365. 000002F2  2250                     movea.l    A1, [A0]
  366. 000002F4  0C51 FFFF                cmpi.w     [A1], 0xFFFF
  367. 000002F8  6600 00F0                bne        +0xF2 /* 000003EA */
  368. label000002FC:
  369. 000002FC  A069                     syscall    HGetState
  370. 000002FE  0800 0007                btst.b     D0, 0x7
  371. 00000302  6608                     bne        +0xA /* 0000030C */
  372. 00000304  4A38 0BB2                tst.b      [0x00000BB2 /* SegHiEnable */]
  373. 00000308  6702                     beq        +0x4 /* 0000030C */
  374. 0000030A  A064                     syscall    MoveHHi
  375. label0000030C:
  376. 0000030C  A029                     syscall    HLock
  377. 0000030E  2010                     move.l     D0, [A0]
  378. 00000310  A055                     syscall    StripAddress
  379. 00000312  2040                     movea.l    A0, D0
  380. 00000314  224D                     movea.l    A1, A5
  381. 00000316  D2F8 0934                add.w      A1, [0x00000934 /* CurJTOffset */]
  382. 0000031A  2228 0008                move.l     D1, [A0 + 0x8]
  383. 0000031E  671E                     beq        +0x20 /* 0000033E */
  384. 00000320  D3E8 0004                add.l      A1, [A0 + 0x4]
  385. 00000324  0C69 4EF9 0002           cmpi.w     [A1 + 0x2], 0x4EF9
  386. 0000032A  6700 0096                beq        +0x98 /* 000003C2 */
  387. label0000032E:
  388. 0000032E  D1A9 0004                add.l      [A1 + 0x4], D0
  389. 00000332  337C 4EF9 0002           move.w     [A1 + 0x2], 0x4EF9
  390. 00000338  5049                     addq.w     A1, 8
  391. 0000033A  5381                     subq.l     D1, 1
  392. 0000033C  66F0                     bne        -0xE /* 0000032E */
  393. label0000033E:
  394. 0000033E  224D                     movea.l    A1, A5
  395. 00000340  D2F8 0934                add.w      A1, [0x00000934 /* CurJTOffset */]
  396. 00000344  2228 0010                move.l     D1, [A0 + 0x10]
  397. 00000348  671C                     beq        +0x1E /* 00000366 */
  398. 0000034A  D3E8 000C                add.l      A1, [A0 + 0xC]
  399. 0000034E  0C69 4EF9 0002           cmpi.w     [A1 + 0x2], 0x4EF9
  400. 00000354  676C                     beq        +0x6E /* 000003C2 */
  401. label00000356:
  402. 00000356  D1A9 0004                add.l      [A1 + 0x4], D0
  403. 0000035A  337C 4EF9 0002           move.w     [A1 + 0x2], 0x4EF9
  404. 00000360  5049                     addq.w     A1, 8
  405. 00000362  5381                     subq.l     D1, 1
  406. 00000364  66F0                     bne        -0xE /* 00000356 */
  407. label00000366:
  408. 00000366  220D                     move.l     D1, A5
  409. 00000368  92A8 0018                sub.l      D1, [A0 + 0x18]
  410. 0000036C  6718                     beq        +0x1A /* 00000386 */
  411. 0000036E  4AA8 0014                tst.l      [A0 + 0x14]
  412. 00000372  6712                     beq        +0x14 /* 00000386 */
  413. 00000374  214D 0018                move.l     [A0 + 0x18], A5
  414. 00000378  2F08                     move.l     -[A7], A0
  415. 0000037A  2248                     movea.l    A1, A0
  416. 0000037C  D1E8 0014                add.l      A0, [A0 + 0x14]
  417. 00000380  6100 0368                bsr        +0x36A /* 000006EA */
  418. 00000384  205F                     movea.l    A0, [A7]+
  419. label00000386:
  420. 00000386  2208                     move.l     D1, A0
  421. 00000388  92A8 0020                sub.l      D1, [A0 + 0x20]
  422. 0000038C  6724                     beq        +0x26 /* 000003B2 */
  423. 0000038E  4AA8 0020                tst.l      [A0 + 0x20]
  424. 00000392  6606                     bne        +0x8 /* 0000039A */
  425. 00000394  0681 0000 0028           addi.l     D1, 0x28 /* '(' */
  426. label0000039A:
  427. 0000039A  4AA8 001C                tst.l      [A0 + 0x1C]
  428. 0000039E  6712                     beq        +0x14 /* 000003B2 */
  429. 000003A0  2148 0020                move.l     [A0 + 0x20], A0
  430. 000003A4  2F08                     move.l     -[A7], A0
  431. 000003A6  2248                     movea.l    A1, A0
  432. 000003A8  D1E8 001C                add.l      A0, [A0 + 0x1C]
  433. 000003AC  6100 033C                bsr        +0x33E /* 000006EA */
  434. 000003B0  205F                     movea.l    A0, [A7]+
  435. label000003B2:
  436. 000003B2  4A03                     tst.b      D3
  437. 000003B4  660C                     bne        +0xE /* 000003C2 */
  438. 000003B6  303C 0002                move.w     D0, 0x2
  439. 000003BA  204F                     movea.l    A0, A7
  440. 000003BC  41E8 0018                lea.l      A0, [A0 + 0x18]
  441. 000003C0  6150                     bsr        +0x52 /* 00000412 */
  442. label000003C2:
  443. 000003C2  4EBA FCCA                jsr        [PC - 0x336 /* 0000008E */]
  444. 000003C6  4A03                     tst.b      D3
  445. 000003C8  6710                     beq        +0x12 /* 000003DA */
  446. 000003CA  4CDF 030F                movem.l    D0,D1,D2,D3,A0,A1, [A7]+
  447. 000003CE  5D97                     subq.l     [A7], 6
  448. 000003D0  2F57 0002                move.l     [A7 + 0x2], [A7]
  449. 000003D4  4FEF 0002                lea.l      A7, [A7 + 0x2]
  450. 000003D8  6006                     bra        +0x8 /* 000003E0 */
  451. label000003DA:
  452. 000003DA  4CDF 030F                movem.l    D0,D1,D2,D3,A0,A1, [A7]+
  453. 000003DE  5597                     subq.l     [A7], 2
  454. label000003E0:
  455. 000003E0  4A38 012D                tst.b      [0x0000012D /* LoadTrap */]
  456. 000003E4  6702                     beq        +0x4 /* 000003E8 */
  457. 000003E6  A9FF                     syscall    Debugger
  458. label000003E8:
  459. 000003E8  4E75                     rts
  460. label000003EA:
  461. 000003EA  303C 0002                move.w     D0, 0x2
  462. 000003EE  204F                     movea.l    A0, A7
  463. 000003F0  41E8 0018                lea.l      A0, [A0 + 0x18]
  464. 000003F4  611C                     bsr        +0x1E /* 00000412 */
  465. label000003F6:
  466. 000003F6  4CDF 030F                movem.l    D0,D1,D2,D3,A0,A1, [A7]+
  467. 000003FA  2F3A FD9C                move.l     -[A7], [PC - 0x264 /* 00000198, value 0x0, cstring "" */]
  468. 000003FE  4E75                     rts
  469. 00000400  800D                     or.b       D0, A5
  470. 00000402  7061                     moveq.l    D0, 0x61
  471. 00000404  7463                     moveq.l    D2, 0x63
  472. 00000406  685F                     bvc        +0x61 /* 00000467 */
  473. 00000408  4C6F 6164 5365           movem.l    D2,D5,D6,A0,A5,A6, [A7 + 0x5365]
  474. 0000040E  6700 0000                beq        +0x2 /* 00000410 */
  475. // begin alternate branch 00000410-00000428
  476. label00000410:
  477. 00000410  0000 48E7                ori.b      D0, 0xE7
  478. fn00000412: // (misaligned)
  479. 00000414  F0C0 4CEF                .extension 0x0C0 <<F/2-3/0>> // unimplemented
  480. 00000418  030F                     btst       A7, D1
  481. 0000041A  001C 9EFC                ori.b      [A4]+, 0xFC
  482. 0000041E  0058 48EF                ori.w      [A0]+, 0x48EF
  483. 00000422  7FFF                     moveq.l    D7, 0xFFFFFFFF
  484. 00000424  000A 224F                ori.b      A2, 0x4F /* 'O' */
  485. // end alternate branch 00000410-00000428
  486. label00000410: // (misaligned)
  487. fn00000412:
  488. 00000412  48E7 F0C0                movem.l    -[A7], D0,D1,D2,D3,A0,A1
  489. 00000416  4CEF 030F 001C           movem.l    D0,D1,D2,D3,A0,A1, [A7 + 0x1C]
  490. 0000041C  9EFC 0058                sub.w      A7, 0x58 /* 'X' */
  491. 00000420  48EF 7FFF 000A           movem.l    [A7 + 0xA], D0,D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4,A5,A6
  492. 00000426  224F                     movea.l    A1, A7
  493. 00000428  204F                     movea.l    A0, A7
  494. 0000042A  41E8 0058                lea.l      A0, [A0 + 0x58]
  495. 0000042E  41E8 0010                lea.l      A0, [A0 + 0x10]
  496. 00000432  2050                     movea.l    A0, [A0]
  497. 00000434  4240                     clr.w      D0
  498. 00000436  6162                     bsr        +0x64 /* 0000049A */
  499. 00000438  43E9 0058                lea.l      A1, [A1 + 0x58]
  500. 0000043C  2011                     move.l     D0, [A1]
  501. 0000043E  612A                     bsr        +0x2C /* 0000046A */
  502. 00000440  554F                     subq.w     A7, 2
  503. 00000442  486F 0002                pea.l      [A7 + 0x2]
  504. 00000446  4E90                     jsr        [A0]
  505. 00000448  544F                     addq.w     A7, 2
  506. 0000044A  4FEF 0058                lea.l      A7, [A7 + 0x58]
  507. 0000044E  4CDF 030F                movem.l    D0,D1,D2,D3,A0,A1, [A7]+
  508. 00000452  4E75                     rts
  509. 00000454  8011                     or.b       D0, [A1]
  510. 00000456  6361                     bls        +0x63 /* 000004B9 */
  511. 00000458  6C6C                     bge        +0x6E /* 000004C6 */
  512. 0000045A  5F75 7365                subq.w     <<invalid full ext with IS == 1 and I/IS == 5>>, 7
  513. 0000045E  725F                     moveq.l    D1, 0x5F
  514. 00000460  6861                     bvc        +0x63 /* 000004C3 */
  515. 00000462  6E64                     bgt        +0x66 /* 000004C8 */
  516. 00000464  6C65                     bge        +0x67 /* 000004CB */
  517. 00000466  7200                     moveq.l    D1, 0x00
  518. 00000468  0000 2F09                ori.b      D0, 0x9 /* '\t' */
  519. // begin alternate branch 0000046A-0000046C
  520. fn0000046A:
  521. 0000046A  2F09                     move.l     -[A7], A1
  522. // end alternate branch 0000046A-0000046C
  523. fn0000046A: // (misaligned)
  524. 0000046C  224D                     movea.l    A1, A5
  525. 0000046E  D2F8 0934                add.w      A1, [0x00000934 /* CurJTOffset */]
  526. 00000472  2269 000C                movea.l    A1, [A1 + 0xC]
  527. 00000476  D040                     add.w      D0, D0
  528. 00000478  D040                     add.w      D0, D0
  529. 0000047A  41F1 0000                lea.l      A0, [A1 + D0.w]
  530. 0000047E  2050                     movea.l    A0, [A0]
  531. 00000480  225F                     movea.l    A1, [A7]+
  532. 00000482  4E75                     rts
  533. 00000484  8012                     or.b       D0, [A2]
  534. 00000486  7365                     moveq.l    D1, 0x65
  535. 00000488  745F                     moveq.l    D2, 0x5F
  536. 0000048A  7665                     moveq.l    D3, 0x65
  537. 0000048C  6374                     bls        +0x76 /* 00000502 */
  538. 0000048E  6F72                     ble        +0x74 /* 00000502 */
  539. 00000490  5F61                     subq.w     -[A1], 7
  540. 00000492  6464                     bcc        +0x66 /* 000004F8 */
  541. 00000494  7265                     moveq.l    D1, 0x65
  542. 00000496  7373                     moveq.l    D1, 0x73
  543. 00000498  0000 48E7                ori.b      D0, 0xE7
  544. // begin alternate branch 0000049A-0000049E
  545. fn0000049A:
  546. 0000049A  48E7 8080                movem.l    -[A7], D0,A0
  547. // end alternate branch 0000049A-0000049E
  548. fn0000049A: // (misaligned)
  549. 0000049C  8080                     or.l       D0, D0
  550. 0000049E  32BC FFFF                move.w     [A1], 0xFFFF
  551. 000004A2  42A9 0054                clr.l      [A1 + 0x54]
  552. 000004A6  3340 0052                move.w     [A1 + 0x52], D0
  553. 000004AA  2348 0002                move.l     [A1 + 0x2], A0
  554. 000004AE  58A9 0002                addq.l     [A1 + 0x2], 4
  555. 000004B2  2050                     movea.l    A0, [A0]
  556. 000004B4  5548                     subq.w     A0, 2
  557. 000004B6  2348 0006                move.l     [A1 + 0x6], A0
  558. 000004BA  3368 FFFE 0046           move.w     [A1 + 0x46], [A0 - 0x2]
  559. 000004C0  237C 434F 4445 0048      move.l     [A1 + 0x48], 0x434F4445 /* 'CODE' */
  560. // begin alternate branch 000004C6-000004CC
  561. label000004C6:
  562. 000004C6  0048 3028                ori.w      A0, 0x3028 /* '0(' */
  563. label000004C8: // (misaligned)
  564. 000004CA  FFFE                     .invalid   <<F/7/7>>
  565. // end alternate branch 000004C6-000004CC
  566. label000004C6: // (misaligned)
  567. label000004C8:
  568. 000004C8  3028 FFFE                move.w     D0, [A0 - 0x2]
  569. 000004CC  6100 0156                bsr        +0x158 /* 00000624 */
  570. 000004D0  4269 0050                clr.w      [A1 + 0x50]
  571. 000004D4  4A90                     tst.l      [A0]
  572. 000004D6  6706                     beq        +0x8 /* 000004DE */
  573. 000004D8  137C 00FF 0050           move.b     [A1 + 0x50], 0xFF
  574. label000004DE:
  575. 000004DE  598F                     subq.l     A7, 4
  576. 000004E0  2F08                     move.l     -[A7], A0
  577. 000004E2  A9A5                     syscall    GetResourceSizeOnDisk/SizeResource/SizeRsrc
  578. 000004E4  235F 004C                move.l     [A1 + 0x4C], [A7]+
  579. 000004E8  4CDF 0101                movem.l    D0,A0, [A7]+
  580. 000004EC  4E75                     rts
  581. 000004EE  800B                     or.b       D0, A3
  582. 000004F0  6669                     bne        +0x6B /* 0000055B */
  583. 000004F2  6C6C                     bge        +0x6E /* 00000560 */
  584. 000004F4  5F73 7472                subq.w     [A3 + D7.w * 4 + 0x72], 7
  585. label000004F8:
  586. 000004F8  7563                     moveq.l    D2, 0x63
  587. 000004FA  7400                     moveq.l    D2, 0x00
  588. 000004FC  0000 48E7                ori.b      D0, 0xE7
  589. 00000500  E0C0                     asr   .w   D0
  590. label00000502:
  591. 00000502  206F 0018                movea.l    A0, [A7 + 0x18]
  592. 00000506  0C50 4EF9                cmpi.w     [A0], 0x4EF9
  593. 0000050A  6600 00FA                bne        +0xFC /* 00000606 */
  594. 0000050E  224D                     movea.l    A1, A5
  595. 00000510  D2F8 0934                add.w      A1, [0x00000934 /* CurJTOffset */]
  596. 00000514  0C69 FFFF 000A           cmpi.w     [A1 + 0xA], 0xFFFF
  597. 0000051A  6600 00EA                bne        +0xEC /* 00000606 */
  598. 0000051E  3028 FFFE                move.w     D0, [A0 - 0x2]
  599. 00000522  6100 0100                bsr        +0x102 /* 00000624 */
  600. 00000526  2F08                     move.l     -[A7], A0
  601. 00000528  2050                     movea.l    A0, [A0]
  602. 0000052A  0C50 FFFF                cmpi.w     [A0], 0xFFFF
  603. 0000052E  205F                     movea.l    A0, [A7]+
  604. 00000530  6600 00D4                bne        +0xD6 /* 00000606 */
  605. 00000534  48E7 00C0                movem.l    -[A7], A0,A1
  606. 00000538  4CEF 0307 0008           movem.l    D0,D1,D2,A0,A1, [A7 + 0x8]
  607. 0000053E  9EFC 0058                sub.w      A7, 0x58 /* 'X' */
  608. 00000542  48EF 7FFF 000A           movem.l    [A7 + 0xA], D0,D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4,A5,A6
  609. 00000548  3EBC FFFF                move.w     [A7], 0xFFFF
  610. 0000054C  42AF 0054                clr.l      [A7 + 0x54]
  611. 00000550  426F 0052                clr.w      [A7 + 0x52]
  612. 00000554  204F                     movea.l    A0, A7
  613. 00000556  41E8 0058                lea.l      A0, [A0 + 0x58]
  614. 0000055A  2250                     movea.l    A1, [A0]
  615. 0000055C  41E8 001C                lea.l      A0, [A0 + 0x1C]
  616. label00000560:
  617. 00000560  2F48 0002                move.l     [A7 + 0x2], A0
  618. 00000564  2068 0004                movea.l    A0, [A0 + 0x4]
  619. 00000568  2F48 0006                move.l     [A7 + 0x6], A0
  620. 0000056C  3F68 FFFE 0046           move.w     [A7 + 0x46], [A0 - 0x2]
  621. 00000572  2F7C 434F 4445 0048      move.l     [A7 + 0x48], 0x434F4445 /* 'CODE' */
  622. 0000057A  426F 0050                clr.w      [A7 + 0x50]
  623. 0000057E  4A91                     tst.l      [A1]
  624. 00000580  6706                     beq        +0x8 /* 00000588 */
  625. 00000582  1F7C 00FF 0050           move.b     [A7 + 0x50], 0xFF
  626. label00000588:
  627. 00000588  598F                     subq.l     A7, 4
  628. 0000058A  2F09                     move.l     -[A7], A1
  629. 0000058C  A9A5                     syscall    GetResourceSizeOnDisk/SizeResource/SizeRsrc
  630. 0000058E  2F5F 004C                move.l     [A7 + 0x4C], [A7]+
  631. 00000592  303C 0003                move.w     D0, 0x3
  632. 00000596  6100 FED2                bsr        -0x12C /* 0000046A */
  633. 0000059A  554F                     subq.w     A7, 2
  634. 0000059C  486F 0002                pea.l      [A7 + 0x2]
  635. 000005A0  4E90                     jsr        [A0]
  636. 000005A2  544F                     addq.w     A7, 2
  637. 000005A4  DEFC 0058                add.w      A7, 0x58 /* 'X' */
  638. 000005A8  4CDF 0300                movem.l    A0,A1, [A7]+
  639. 000005AC  A02A                     syscall    HUnlock
  640. 000005AE  2010                     move.l     D0, [A0]
  641. 000005B0  A055                     syscall    StripAddress
  642. 000005B2  2040                     movea.l    A0, D0
  643. 000005B4  2228 0008                move.l     D1, [A0 + 0x8]
  644. 000005B8  6716                     beq        +0x18 /* 000005D0 */
  645. 000005BA  D3E8 0004                add.l      A1, [A0 + 0x4]
  646. 000005BE  2008                     move.l     D0, A0
  647. label000005C0:
  648. 000005C0  91A9 0004                sub.l      [A1 + 0x4], D0
  649. 000005C4  337C A9F0 0002           move.w     [A1 + 0x2], 0xA9F0
  650. 000005CA  5049                     addq.w     A1, 8
  651. 000005CC  5381                     subq.l     D1, 1
  652. 000005CE  66F0                     bne        -0xE /* 000005C0 */
  653. label000005D0:
  654. 000005D0  224D                     movea.l    A1, A5
  655. 000005D2  D2F8 0934                add.w      A1, [0x00000934 /* CurJTOffset */]
  656. 000005D6  2228 0010                move.l     D1, [A0 + 0x10]
  657. 000005DA  6718                     beq        +0x1A /* 000005F4 */
  658. 000005DC  D3E8 000C                add.l      A1, [A0 + 0xC]
  659. 000005E0  2008                     move.l     D0, A0
  660. label000005E2:
  661. 000005E2  91A9 0004                sub.l      [A1 + 0x4], D0
  662. 000005E6  337C A9F0 0002           move.w     [A1 + 0x2], 0xA9F0
  663. 000005EC  5049                     addq.w     A1, 8
  664. 000005EE  5381                     subq.l     D1, 1
  665. 000005F0  66F0                     bne        -0xE /* 000005E2 */
  666. 000005F2  6006                     bra        +0x8 /* 000005FA */
  667. label000005F4:
  668. 000005F4  2228 0008                move.l     D1, [A0 + 0x8]
  669. 000005F8  670C                     beq        +0xE /* 00000606 */
  670. label000005FA:
  671. 000005FA  6100 FA92                bsr        -0x56C /* 0000008E */
  672. 000005FE  4CDF 0307                movem.l    D0,D1,D2,A0,A1, [A7]+
  673. 00000602  2E9F                     move.l     [A7], [A7]+
  674. 00000604  4E75                     rts
  675. label00000606:
  676. 00000606  4CDF 0307                movem.l    D0,D1,D2,A0,A1, [A7]+
  677. 0000060A  2F3A FB94                move.l     -[A7], [PC - 0x46C /* 000001A0, value 0x0, cstring "" */]
  678. 0000060E  4E75                     rts
  679. 00000610  800F                     or.b       D0, A7
  680. 00000612  7061                     moveq.l    D0, 0x61
  681. 00000614  7463                     moveq.l    D2, 0x63
  682. 00000616  685F                     bvc        +0x61 /* 00000677 */
  683. 00000618  556E 6C6F                subq.w     [A6 + 0x6C6F], 2
  684. 0000061C  6164                     bsr        +0x66 /* 00000682 */
  685. 0000061E  5365                     subq.w     -[A5], 1
  686. 00000620  6700 0000                beq        +0x2 /* 00000622 */
  687. // begin alternate branch 00000622-0000062A
  688. label00000622:
  689. 00000622  0000 51F8                ori.b      D0, 0xF8
  690. fn00000624: // (misaligned)
  691. 00000626  0A5E 594F                xori.w     [A6]+, 0x594F /* 'YO' */
  692. // end alternate branch 00000622-0000062A
  693. label00000622: // (misaligned)
  694. fn00000624:
  695. 00000624  51F8 0A5E                sf         [0x00000A5E /* ResLoad */]
  696. 00000628  594F                     subq.w     A7, 4
  697. 0000062A  2F3C 434F 4445           move.l     -[A7], 0x434F4445 /* 'CODE' */
  698. 00000630  3F00                     move.w     -[A7], D0
  699. 00000632  A9A0                     syscall    GetResource
  700. 00000634  3038 0A60                move.w     D0, [0x00000A60 /* ResErr */]
  701. 00000638  205F                     movea.l    A0, [A7]+
  702. 0000063A  50F8 0A5E                st         [0x00000A5E /* ResLoad */]
  703. 0000063E  4E75                     rts
  704. 00000640  800B                     or.b       D0, A3
  705. 00000642  6765                     beq        +0x67 /* 000006A9 */
  706. 00000644  745F                     moveq.l    D2, 0x5F
  707. 00000646  7265                     moveq.l    D1, 0x65
  708. 00000648  735F                     moveq.l    D1, 0x5F
  709. 0000064A  6864                     bvc        +0x66 /* 000006B0 */
  710. 0000064C  6C00 0000                bge        +0x2 /* 0000064E */
  711. // begin alternate branch 0000064E-00000656
  712. label0000064E:
  713. 0000064E  0000 50F8                ori.b      D0, 0xF8
  714. fn00000650: // (misaligned)
  715. 00000652  0A5E 594F                xori.w     [A6]+, 0x594F /* 'YO' */
  716. // end alternate branch 0000064E-00000656
  717. label0000064E: // (misaligned)
  718. fn00000650:
  719. 00000650  50F8 0A5E                st         [0x00000A5E /* ResLoad */]
  720. 00000654  594F                     subq.w     A7, 4
  721. 00000656  2F3C 434F 4445           move.l     -[A7], 0x434F4445 /* 'CODE' */
  722. 0000065C  3F00                     move.w     -[A7], D0
  723. 0000065E  A9A0                     syscall    GetResource
  724. 00000660  205F                     movea.l    A0, [A7]+
  725. 00000662  4A78 0A60                tst.w      [0x00000A60 /* ResErr */]
  726. 00000666  6602                     bne        +0x4 /* 0000066A */
  727. 00000668  6070                     bra        +0x72 /* 000006DA */
  728. label0000066A:
  729. 0000066A  4CEF 030F 0004           movem.l    D0,D1,D2,D3,A0,A1, [A7 + 0x4]
  730. 00000670  9EFC 0058                sub.w      A7, 0x58 /* 'X' */
  731. 00000674  48EF 7FFF 000A           movem.l    [A7 + 0xA], D0,D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4,A5,A6
  732. 0000067A  224F                     movea.l    A1, A7
  733. 0000067C  3038 0A60                move.w     D0, [0x00000A60 /* ResErr */]
  734. 00000680  204F                     movea.l    A0, A7
  735. fn00000682:
  736. 00000682  D0FC 0058                add.w      A0, 0x58 /* 'X' */
  737. 00000686  41E8 0018                lea.l      A0, [A0 + 0x18]
  738. 0000068A  6100 FE0E                bsr        -0x1F0 /* 0000049A */
  739. 0000068E  303C 0004                move.w     D0, 0x4
  740. 00000692  6100 FDD6                bsr        -0x228 /* 0000046A */
  741. 00000696  554F                     subq.w     A7, 2
  742. 00000698  486F 0002                pea.l      [A7 + 0x2]
  743. 0000069C  4E90                     jsr        [A0]
  744. 0000069E  301F                     move.w     D0, [A7]+
  745. 000006A0  43E9 0058                lea.l      A1, [A1 + 0x58]
  746. 000006A4  0C40 0001                cmpi.w     D0, 0x1
  747. 000006A8  6612                     bne        +0x14 /* 000006BC */
  748. 000006AA  236F 0006 0018           move.l     [A1 + 0x18], [A7 + 0x6]
  749. label000006B0:
  750. 000006B0  4FEF 0058                lea.l      A7, [A7 + 0x58]
  751. 000006B4  584F                     addq.w     A7, 4
  752. 000006B6  4CDF 030F                movem.l    D0,D1,D2,D3,A0,A1, [A7]+
  753. 000006BA  601E                     bra        +0x20 /* 000006DA */
  754. label000006BC:
  755. 000006BC  0C40 0002                cmpi.w     D0, 0x2
  756. 000006C0  660E                     bne        +0x10 /* 000006D0 */
  757. 000006C2  4FEF 0058                lea.l      A7, [A7 + 0x58]
  758. 000006C6  584F                     addq.w     A7, 4
  759. 000006C8  4CDF 030F                movem.l    D0,D1,D2,D3,A0,A1, [A7]+
  760. 000006CC  584F                     addq.w     A7, 4
  761. 000006CE  600A                     bra        +0xC /* 000006DA */
  762. label000006D0:
  763. 000006D0  6100 FB20                bsr        -0x4DE /* 000001F2 */
  764. 000006D4  700F                     moveq.l    D0, 0x0F
  765. 000006D6  A9C9                     syscall    SysError
  766. 000006D8  A9FF                     syscall    Debugger
  767. label000006DA:
  768. 000006DA  4E75                     rts
  769. 000006DC  8009                     or.b       D0, A1
  770. 000006DE  6C6F                     bge        +0x71 /* 0000074F */
  771. 000006E0  6164                     bsr        +0x66 /* 00000746 */
  772. 000006E2  5F63                     subq.w     -[A3], 7
  773. 000006E4  6F64                     ble        +0x66 /* 0000074A */
  774. 000006E6  6500 0000                bcs        +0x2 /* 000006E8 */
  775. // begin alternate branch 000006E8-000006EC
  776. label000006E8:
  777. 000006E8  0000 7000                ori.b      D0, 0x0
  778. // end alternate branch 000006E8-000006EC
  779. label000006E8: // (misaligned)
  780. fn000006EA:
  781. 000006EA  7000                     moveq.l    D0, 0x00
  782. 000006EC  1018                     move.b     D0, [A0]+
  783. 000006EE  670A                     beq        +0xC /* 000006FA */
  784. 000006F0  6A12                     bpl        +0x14 /* 00000704 */
  785. 000006F2  0880 0007                bclr.b     D0, 0x7
  786. 000006F6  6114                     bsr        +0x16 /* 0000070C */
  787. 000006F8  600A                     bra        +0xC /* 00000704 */
  788. label000006FA:
  789. 000006FA  6110                     bsr        +0x12 /* 0000070C */
  790. 000006FC  6712                     beq        +0x14 /* 00000710 */
  791. 000006FE  610C                     bsr        +0xE /* 0000070C */
  792. 00000700  610A                     bsr        +0xC /* 0000070C */
  793. 00000702  6108                     bsr        +0xA /* 0000070C */
  794. label00000704:
  795. 00000704  D080                     add.l      D0, D0
  796. 00000706  D3C0                     add.l      A1, D0
  797. 00000708  D391                     add.l      [A1], D1
  798. 0000070A  60DE                     bra        -0x20 /* 000006EA */
  799. fn0000070C:
  800. 0000070C  E188                     lsl        D0, 8
  801. 0000070E  1018                     move.b     D0, [A0]+
  802. label00000710:
  803. 00000710  4E75                     rts
  804. 00000712  8008                     or.b       D0, A0
  805. 00000714  5265                     addq.w     -[A5], 1
  806. 00000716  6C6F                     bge        +0x71 /* 00000787 */
  807. 00000718  6361                     bls        +0x63 /* 0000077B */
  808. 0000071A  7465                     moveq.l    D2, 0x65
  809. 0000071C  0000                     .incomplete
  810.